package com.pxmeta.circle.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.pxmeta.circle.entity.CirclePrivilege;
import com.pxmeta.privilege.entity.vo.PrivilegeVO;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author wcl
 * @since 2022-07-02
 */
public interface ICirclePrivilegeService extends IService<CirclePrivilege> {


    /**
     * 初始化圈子权限
     * @param circleId
     */
    void initCirclePrivilege(Long circleId);

    /**
     * 获取圈子当前权限的状态。
     * @param circleId
     * @param privilegeId
     * @param type
     * @return
     */
    Integer getPrivilegeStatus(Long circleId, Long privilegeId, Integer type);


    /**
     * 获取圈子权限
     * @param type
     * @return
     */
    PrivilegeVO getCirclePrivilege(Long circleId, Integer type);


    /**
     * 根据圈子id查询
     * @param circleIds
     * @return
     */
    List<CirclePrivilege> listByCircleId(List<Long> circleIds);
}
